package com.cg.service;


import com.cg.dto.*;
import com.cg.vo.*;
import com.cg.vo.floor.FloorItemsVo;

import java.util.List;

/**
 * 节目表(DmItem)表服务接口
 *
 * @author makejava
 * @since 2023-11-08 13:00:50
 */
public interface DmItemService {

    //获取所有的商品分类
    Dto<List<ItemInfoVo>> findItemAll();



    //首页轮播图接口
    Dto<List<HotItems>> queryBanner();


    //今日推荐列表
    Dto<List<BannerVo>> queryTodayRecommend();



    //即将开售列表
    Dto<List<BannerVo>> queryToSaleItem();


    //首页返回不同楼层展示数据
    Dto<List<FloorItemsVo>> queryFloorItems();


    //不同分类排行
    Dto<List<HotsVo>> queryHotitems(HotDto hotDto);


    //1. 根据分类查询轮播图
    Dto<List<HotItems>> querySlideShowPic(HotDto hotDto);



    //根据商品ID返回商品详情页
    Dto<ItemDetailVo> queryItemDetail(Long id);



    //根据商品id查询商品排期
    Dto<List<ItemSchedulerVo>> queryItemScheduler(ItemSchedulerDto itemSchedulerDto);


    //根据商品排期查询商品价格
    Dto<List<ItemPriceVo>> queryItemPrice(ItemPriceDto itemPriceDto);


    //根据商品id查询剧评
    Dto<List<ItemCommentVo>> queryItemComment(ItemCommentDto itemCommentDto);


    //添加剧评
    Dto addItemComment(AddItemCommentDto addItemCommentDto);

    //推荐接口
    Dto<List<ItemRecommendVo>> queryItemRecommend(ItemRecommendDto itemRecommendDto);

    //查询分类列表
    Dto<List<QueryItemTypeVo>> queryItemType(Long parent);


    //猜你喜欢接口
    Dto<List<QueryItemLikeVo>> queryItemLike(Long itemTypeId);


    //根据月份查询演出
    List<DayItemVo> queryItemByMonth(DayItemDto dto);
}
